#pragma once
#include <exception>
#include <string>

class FileOpenException : public std::exception {
public:
	FileOpenException(std::string filename);
};

class ArrayOverflowException : public std::exception {
public:
	ArrayOverflowException();
};

class SymbolNotFoundException : public std::exception {
public:
	SymbolNotFoundException(std::string name);
};

class SectionNotFoundException : public std::exception {
public:
	SectionNotFoundException(std::string name);
};

class FileNotSupportException : public std::exception {
public:
	FileNotSupportException();
};

class FileNotRelocatableException : public std::exception {
public:
	FileNotRelocatableException();
};

class NotSupportedSectionType : public std::exception {
public:
	NotSupportedSectionType();
};

class NotSupportedMachineSize : public std::exception {
public:
	NotSupportedMachineSize();
};